#pragma once

#include<string>
#include "ssiot/json.hpp"


class Settings
{
public:
	Settings();
	~Settings();
	
	nlohmann::json getSettings(std::string model);

	void LoadFromFile(std::string filename);

	void SaveToFile();

	void LoadSettings(std::string model, nlohmann::json& cfg);

	void SyncSettings(std::string model, nlohmann::json& cfg);
	
	nlohmann::json CheckOutSettings(std::string model);

	void CommitSettings(std::string model, nlohmann::json cfg);

private:
	nlohmann::json	settings_;
	std::string		filename_;
};
